// 商品分类的群居组件的小仓库
import { defineStore } from 'pinia'
import { reqC1, reqC2, reqC3 } from '@/api/product/attr'
// 导入数据定义的ts类型
import { CategoryResponseData } from '@/api/product/attr/type'
import { CategoryStore } from './types/type'
let useCategoryStore = defineStore('Category', {
  state: (): CategoryStore => {
    return {
      // 存储一级分类的数据
      C1Arr: [],
      // 存储一级分类的ID
      C1Id: '',
      // 存储对应一级分类下二级分类的数据
      C2Arr: [],
      // 收集二级分类的ID
      C2Id: '',
      // 存储三级分类的数据
      C3Arr: [],
      // 存储三级分类的ID
      C3Id: '',
    }
  },
  actions: {
    // 获取一级分类的方法
    async getC1() {
      let result: CategoryResponseData = await reqC1()
      // console.log(result);
      if (result.code == 200) {
        this.C1Arr = result.data
      }
    },
    //  获取二级份类的数据
    async getC2() {
      //  获取对应的一级分类下二级分类的数据
      let result: CategoryResponseData = await reqC2(this.C1Id)
      // console.log(result)
      if (result.code == 200) {
        this.C2Arr = result.data
      }
    },
    // 获取队形的二级分类下三级分类的数据
    async getC3() {
      let result: CategoryResponseData = await reqC3(this.C2Id)
      // console.log(result)
      if (result.code == 200) {
        this.C3Arr = result.data
      }
    },
  },
  getters: {},
})

export default useCategoryStore
